package asteroids.model.programs.Expression;

import be.kuleuven.cs.som.annotate.Basic;

/**
* 
* @version 0.3
* @author  Tandan Sunil, Van Deun Luca
*
*/
public abstract class BinaryBooleanExpression extends BooleanExpression{

	public BinaryBooleanExpression(int line, int column,Expression e1,Expression e2) throws IllegalArgumentException{
		super(line, column);
		if(!canHaveAsExpression(e1) || !canHaveAsExpression(e2))
			throw new IllegalArgumentException("Given Expressions cannot be completed");
		this.e1 = e1;
		this.e2 = e2;
		
	}
	private Expression e1;
	private Expression e2;
	/**
	 * Returns the first Expression of this comparison.
	 * 
	 */
	@Basic
	public Expression getFirstExpression(){
		return e1;
	}
	/**
	 * Return the second Expression of this comparison.
	 * 
	 */
	@Basic
	public Expression getSecondExpression(){
		return e2;
	}

	
	

}
